package fr.afcepf.al23.qualite.business;

import fr.afcepf.al23.qualite.entity.Utilisateur;
import fr.afcepf.al23.qualite.exception.QualiteException;

/**
 * Classe contentant les règles de gestion pour les traitements
 * sur l'utilisateur.
 * @author Stagiaire
 */
public interface IBusinessUtilisateur {
    /**
     * Méthode permettant l'enregistrement d'un utilisateur.
     * @param util L'utilisateur à enregistrer.
     * @return un objet {@link Utilisateur} avec sa clé primaire
     * si l'enregistrement a fonctionné.
     * @throws QualiteException si l'utilisateur à enregistrer possède
     * une adresse mail déjà existante dans le SI.
     */
    Utilisateur enregistrer(Utilisateur util)
        throws QualiteException;
}
